Validate bounded-query sandbox runtime matrix - #6780
Conversation
Add fail-closed 3x3 runtime conformance, safe telemetry, capability reporting, opt-in gVisor coverage, and promotion documentation. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 7fe22290-7ea3-4de1-be61-849d0c06c958
There was a problem hiding this comment.
Pull request overview
Adds bounded-query runtime-matrix validation, capability preflights, telemetry, and expanded isolation coverage.
Changes:
- Models and reports all nine primary/query runtime combinations.
- Adds fail-closed preflights, telemetry, and cleanup validation.
- Documents runtime support, troubleshooting, and sbx promotion criteria.
Show a summary per file
| File | Description |
|---|---|
.github/workflows/test-gvisor-compat.yml |
Adds gVisor isolation CI. |
containers/bounded-query/broker/broker.js |
Emits query telemetry. |
containers/bounded-query/broker/config.js |
Loads primary backend. |
containers/bounded-query/broker/runtime-telemetry.js |
Persists restricted telemetry records. |
containers/bounded-query/broker/server.js |
Wires lifecycle telemetry. |
docs/awf-config-spec.md |
Specifies matrix and promotion requirements. |
docs/bounded-queries.md |
Documents matrix and troubleshooting. |
docs/sbx-integration.md |
Clarifies sbx support criteria. |
scripts/ci/report-bounded-query-runtime-matrix.js |
Generates capability reports. |
scripts/ci/report-bounded-query-runtime-matrix.test.ts |
Tests matrix reporting. |
scripts/ci/smoke-bounded-queries.sh |
Requires Docker matrix support. |
src/bounded-query/manager.ts |
Adds runtime preflight orchestration. |
src/bounded-query/manager.test.ts |
Tests preflight ordering. |
src/bounded-query/mount-policy.test.ts |
Makes real-path assertion portable. |
src/bounded-query/preflight.ts |
Adds primary/query availability checks. |
src/bounded-query/preflight.test.ts |
Covers capability failures. |
src/bounded-query/runtime-matrix.ts |
Defines matrix and telemetry types. |
src/bounded-query/runtime-matrix.test.ts |
Exercises matrix contracts. |
src/bounded-query/wrapper.test.ts |
Extends concurrent-test timeout. |
src/services/bounded-query-service.ts |
Passes primary backend to broker. |
src/services/bounded-query-service.test.ts |
Tests backend environment mapping. |
tests/integration/bounded-query-isolation.test.ts |
Adds gVisor selection and cleanup. |
Review details
Tip
Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Files reviewed: 22/22 changed files
- Comments generated: 4
- Review effort level: Balanced
|
✅ Copilot review passed with no inline comments. @lpcox Add the |
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 7fe22290-7ea3-4de1-be61-849d0c06c958
|
✅ Smoke Claude passed |
|
✨ The prophecy is fulfilled... Smoke Codex has completed its mystical journey. The stars align. 🌟 |
|
📰 DEVELOPING STORY: Smoke Docker Sbx reports failed. Our correspondents are investigating the incident... |
|
🔌 Smoke Services — All services reachable! ✅ |
|
📰 VERDICT: Smoke Copilot has concluded. All systems operational. This is a developing story. 🎤 |
|
✅ Contribution Check completed successfully! |
|
📡 Smoke OTel Tracing completed. All tracing scenarios validated. ✅ |
|
🛡️ Smoke Copilot Network Isolation confirmed the egress allowlist is enforced. ✅ |
|
✅ Smoke Gemini completed. All facets verified. 💎 |
|
✅ Smoke Copilot BYOK AOAI (api-key) completed. Copilot AOAI BYOK (api-key) mode operational. 🔓 No further action needed - smoke test summary posted as comment |
|
Chroot tests passed! Smoke Chroot - All security and functionality tests succeeded. |
|
✅ Smoke Copilot BYOK AOAI (Entra) completed. Copilot AOAI BYOK (Entra) mode operational. 🔓 |
|
✅ Build Test Suite completed successfully! |
|
✅ Smoke Copilot BYOK completed. Copilot BYOK mode operational. 🔓 |
|
✅ Security Guard completed successfully! Security review complete for PR #6780 (Validate bounded-query sandbox runtime matrix). Analysis scope: 4 security-relevant files with 56 new lines. Findings: All security-critical components passed review. No firewall rule changes, no capability additions, no authentication bypasses, no secrets exposure. Input validation is robust (whitelisted backends and categories, regex-enforced category pattern). File permissions restrictive (0o600). Error handling safe. This is a security-neutral observability feature addition. No security concerns to report. |
|
Smoke Test Results (@lpcox)
Overall: PASS
|
Smoke Test: Claude Engine Validation
Overall result: PASS
|
|
Thanks — the PR description is clear and it references related work, which matches the PR-process guidance in CONTRIBUTING.md. One thing I couldn't verify from the changed files here: new/updated tests for the bounded-query matrix and documentation updates for the new runtime/telemetry behavior. CONTRIBUTING.md asks contributors to "write tests for new functionality" and to "update documentation for any new features." If those changes are elsewhere, please ignore this note; otherwise, please add them so the PR fully meets the contribution guidelines.
|
|
Smoke Test: Services Connectivity — FAIL
Overall: FAIL —
|
Smoke Test: Copilot BYOK (Direct) ✅ PASSRunning in direct BYOK mode via
All tests passed. @lpcox
|
|
Recent merged PRs:
Checks:
Overall: PASS Warning Firewall blocked 1 domainThe following domain was blocked by the firewall during workflow execution:
To allow these domains, add them to the network:
allowed:
- defaults
- "registry.npmjs.org"See Network Configuration for more information.
|
Smoke Test: API Proxy OTEL Tracing
All scenarios pass. No issues found.
|
|
@lpcox Smoke test (BYOK AOAI Entra):
|
Chroot Version Comparison Test Results
Overall: FAILED — Node.js version mismatch between host and chroot environments.
|
|
EGRESS_RESULT allow=pass deny=pass ✅ Allowed domain (api.github.com) reachable: Overall status: PASS Warning Firewall blocked 1 domainThe following domain was blocked by the firewall during workflow execution:
To allow these domains, add them to the network:
allowed:
- defaults
- "example.com"See Network Configuration for more information.
|
Gemini Smoke Test Results
Overall Status: FAIL Note: PR titles for #6762 and #6758 were inaccessible due to secrecy policy.
|
|
@lpcox smoke-copilot-byok results:
|
🏗️ Build Test Suite Results
Overall: 8/8 ecosystems passed — ✅ PASS Notes: Java Maven builds required
|
Summary
Current matrix
Validation
Stacked on #6764; merge after #6762, #6763, and #6764.